﻿// -------------------------------------------------------------------------
//    @FileName         :    NFCityNpcUtil.h
//    @Author           :    Gao.Yi
//    @Date             :    2025-09-29
//    @Email			:    445267987@qq.com
//    @Module           :    NFCityNpcUtil
//    @Desc             :
//
// -------------------------------------------------------------------------

#pragma once

#include "NFComm/NFObjCommon/NFObject.h"

struct Proto_Vector3;
class NFCityNpc;

class NFCityNpcUtil
{
public:
    static NFCityNpc* CreateNpc(int iMapInstID, int iNpcID, const Proto_Vector3& oPos, int iDirection, int iDuration);
    static int RemoveNpc(NFCityNpc* pNpc);
    static int OnNpcSpawnEvent(int iEventId, int& iNum, int aiSpawnId[]);
    static int DoSpawnNpc(int iSpawnId);

private:
    static int ReduceSpawnNpcCnt(NFCityNpc* pNpc);
};
